# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Rémy Oudompheng <remy@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - set ARM architectures to use linux-thr profile, AArch64 to linux-64-thr
#  - sed to remove -m32 and -m64 from CFLAGS

pkgname=tachyon
pkgver=0.98.9
pkgrel=8
pkgdesc="Multithreaded ray tracing software"
arch=(x86_64)
url="http://jedi.ks.uiuc.edu/~johns/raytracer/"
license=(BSD)
depends=(libjpeg-turbo libpng)
makedepends=()
source=("http://jedi.ks.uiuc.edu/~johns/raytracer/files/$pkgver/$pkgname-$pkgver.tar.gz"
        enable-jpeg-png.patch
        tachyon-system-cflags.patch)
sha256sums=('c6a3298ded4dc3e9390447819e1dac59b62c3d2d46d4154312ffe71549ee40d7'
            'ecd6ab6274879e0f971e2eba17871fffe2e24dcc9a332013a0b100ee4857cc2c'
            '34f703af96afe117c851a5825b7fd6b71211c09e4a8c3b836d012d250bb6918f')

case "$CARCH" in
  arm*) _target=linux-thr ;;
  "aarch64") _target=linux-64-thr ;;
  "i686") _target=linux-thr ;;
  "x86_64") _target=linux-64-thr ;;
esac

prepare(){
  cd $pkgname
# enable JPEG and PNG support
  patch -p0 -i ../enable-jpeg-png.patch
# use system build flags
  patch -p1 -i ../tachyon-system-cflags.patch
  sed -e 's|${CC} ${CFLAGS}|${CC} ${CFLAGS} ${LDFLAGS}|g' -i unix/Makefile

  # remove -m32 and -m64 for ARM
  sed -i 's/-m32//g' unix/Make-arch
  sed -i 's/-m64//g' unix/Make-arch
}

build() {
  cd $pkgname/unix
  make $_target CC="gcc ${CFLAGS} ${LDFLAGS}"
}

package() {
  cd $pkgname/compile/$_target
  install -D -m 755 tachyon "$pkgdir"/usr/bin/tachyon
  install -D -m 644 libtachyon.a "$pkgdir"/usr/lib/libtachyon.a

  cd "$srcdir"/$pkgname/scenes
  install -d "$pkgdir"/usr/share/tachyon/scenes/imaps
  install -m 644 README *.dat *.cam *.ac "$pkgdir"/usr/share/tachyon/scenes
  install -m 644 imaps/* "$pkgdir"/usr/share/tachyon/scenes/imaps

  install -d "$pkgdir"/usr/share/licenses/tachyon
  install "$srcdir"/$pkgname/Copyright "$pkgdir"/usr/share/licenses/tachyon
}
